package com.example.papercut.mapper;

import com.example.papercut.entity.AuthorInformation;
import com.example.papercut.entity.PapercutTemplate;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;

@Mapper
public interface AuthorInformationMapper {

    /**
     * 4.1: 根据 ID 获取作者详细信息及其派系信息
     */
    AuthorInformation findAuthorDetailsById(Integer id);

    /**
     * 4.2: 根据派系 ID 查询所有作者
     */
    List<AuthorInformation> findAuthorsByStyleId(Integer styleId);

    /**
     * 4.2: 获取指定派系的所有模板
     * 实际SQL需要联合 author_information 和 papercut_template 表
     */
    List<PapercutTemplate> findTemplatesByStyleId(@Param("styleId") Integer styleId);

    // ... 其他 CRUD 方法
}